In contrast with synchronous circuit designs that rely on a clock signal, asynchronous circuits have the advantage of being more or less insensitive to delay variations resulting for example from variations in the manufacturing process. Furthermore, by avoiding the use of a clock, asynchronous circuits have relatively low power consumption. Asynchronous circuits are generally designed to operate based on events determined using a specific handshake protocol.
The basic circuit element of an asynchronous design is a circuit known as a C-element or Muller cell. This circuit includes a volatile latch for storing a state. Thus if the asynchronous circuit is powered down, the data stored by the various C-elements will be lost.
An asynchronous pipeline is generally formed in stages, each stage comprising a half buffer formed of several C-elements.
For aviation and/or spatial applications, it would be desirable to provide an asynchronous circuit that is rendered robust against the effects of radiation. Indeed, the presence of ionising particles at high altitudes or in space can induce currents in integrated circuits that may be enough to cause a flip in the binary state held by one or more gates. This may cause the circuit to malfunction, known in the art as a single event upset (SEU).
It has been proposed to provide dual modular redundancy (DMR) or triple modular redundancy (TMR) in an asynchronous circuit design in order to provide radiation protection. Such techniques rely on duplicating the circuit in the case of DMR, or triplicating the circuit in the case of TMR, and detecting a discordance between the outputs of the circuits as an indication of the occurrence of an SEU.
A problem with the DMR technique is that it does not permit the error to be corrected, and thus when an error is detected, the circuit is simply reset. This adds a time delay, as the processing operation must be restarted. Furthermore, if SEUs occur at a relatively high rate, it may even be impossible for a processing operation to be completed before a reset is required.
The TMR technique does allow the error to be corrected, for example by selecting the output value generated by two out of three of the circuits. However, a drawback with the TMR technique is that the surface area and power consumption of the circuit are increased by a factor of three.
There is thus a need in the art for a circuit having relatively low surface area and power consumption, and that allows recovery following an SEU without requiring a reset.